package biolabs.model.division;

import java.util.List;

/**
 * @param space space to be occupied by the daughter cell.
 * Should be a subset of space occupied by the parent cell
 * (the one requesting the division). In reasonable cases both
 * the parent and the daughter cell should stay connected.
 */
abstract class DivisionDelegate[P, T](val space: List[P]) {

	/**
	 * Returns the new daughter bio-object if division has been approved.
	 * The daughter bio-object may be created lazily.
	 */
	def daughter(): T
	
}
